1. Field of the Invention
The present invention relates to writing data to disk and more particularly to reducing overhead associated with recovery from write faults encountered during write operations to the disk.
2. Description of the Related Arts
As computer CPU processing speeds continues to increase, data transfer rates become increasing important. Without data being constantly supplied to the computer CPU, a computer system cannot realize its full computational speed potential. Other applications such as multimedia environments require high data transfer rates to support real time video at frame rates of about 30 fps. A video clip sent uncompressed at 24 pictures/second requires raw data rates of about 60 Mbit/s, and a one-minute video clip occupies 448 Mbytes of storage space. For audio tracks, the data rates are not quite as formidable. If the sound track is in stereo and each of the two channels is sampled with 16-bit precision at a 44 kHz sampling rate, the data rate is about 1.4 Mbit/s.
However, modern video compression techniques such as MPEG reduces the storage and data transfer requirements of a storage device that are used in the multimedia environments. Even with advanced compression techniques, sustained data transfers at real time rates are still a challenge. Given that hard disk storage devices are still the most widely used data storage devices, techniques have been developed to address the inadequate data transfer rates. For example, RAID (Redundant Arrays of Inexpensive Disks) systems are commonly employed in multimedia environments to achieve the necessary data transfer rates. RAID systems utilize multiple disk drives that distribute the data between the multiple disk drives so that any one particular drive stores a portion of the total data. RAID systems are very costly and complex to implement and maintain.
A typical disk drive data storage subsystem employs at least one rotating disk and a plurality of positionable data transducer heads known as a head stack. The disks are conventionally mounted in a vertically stacked arrangement upon a common spindle hub. An internal DC brushless spindle motor rotates to spindle hub at predetermined angular velocity. For high performance disk drives with high data transfer rates, it is common to encounter disk speed in the 5500 to 8500 RPM category within 3.5 inch form factor disk drives.
A mass balanced rotary voice coil actuator motor is frequently employed to rapidly move the heads of the head stack in unison. The actuator moves the head stack from a departure track location to a destination location during track seeking operations. Once the head stack has arrived at a destination location, a selected head is settled over the desired data track where data is to be used or stored.
During the data write operation, it is a common occurrence that a write fault is encountered. A write fault or write error to a data track may be due to many conditions but one possible condition is the occurrence of write bumps on the disk. In typical desktop disk drive environments, the disk drive enters into a write retry state where the disk drive controller continues to retry writing to that particular sector. There can be hundreds or thousands of retries depending on the programming of the disk drive controller. After exhausting unsuccessful retries to write data to that particular sector, the bad sector is remapped by assigning a replacement sector. Many instances, the reassigned sector is located away from the current sector on another track. In order for the head stack to locate the reassigned sector, at least one revolution of the disk may need to pass before the head stack can locate the destination track. Thus, by the time the data is written to the reassigned sector, much overhead time has elapsed between the retries and the reassignment of a different sector. Moreover, when it comes time to retrieve the data previously written to the reassigned sector, additional overhead is required to move the head stack to the reassigned sector.
In time critical data applications such as multimedia or AV multi-data streaming environments where sustaining data throughputs are imperative, a disk drive can ill afford the overhead to perform a write fault recovery sequence by performing numerous retries and reassigning a replacement sector for a write fault sector. Current solutions in time critical data applications require investment in expensive RAID systems employing the more costly SCSI (Small Computer System Interface) disk drives.
Therefore, it is desirable to provide an apparatus and methods of operating the same which sustains data throughput to improve data transfer rates of a hard disk drive.
The present invention provides an apparatus for sustaining data throughput and methods for operating the same which result in improved data transfer rates. The novel improved apparatus is based on reducing overhead associated with an encountered write fault sector. Thus, according to one aspect of the invention, the apparatus for sustaining data throughput having a file allocation unit including a plurality of sectors for storing data, comprises a write controller coupled to the file allocation unit configured to write data to the plurality of sectors. A write fault detector is coupled to the write controller and the file allocation unit configured to detect a write fault. A write fault controller is coupled to the write controller, the write fault detector, and the file allocation unit responsive to a detected write fault to skip a defective sector and restart the write controller to continue writing data to the plurality of sectors.
According to another aspect of the invention, the write fault controller generates a skipped write defect list corresponding to the defective sector. The skipped write defect list includes a sequence of skipped sectors. The write fault controller determines the number of sectors in the sequence of skipped sectors based upon current zone information and the time required to restart the disk controller with the adjusted write transfer sector counts.
According to yet another aspect of the invention, the file allocation unit includes servo wedges positioned between the plurality of sectors for storing data. The servo wedges aid the servo to position a read/write head at a particular location to perform the write operation. Each servo wedge contains information for the servo system to determine the position of the read/write head relative to a track center. Thus, the servo system adjusts the position of the read/write head based on information from the servo wedge. The write controller writes data beginning at a servo wedge. The write fault detector detects the write fault at a particular servo wedge.
An apparatus and method for sustaining data throughput are provided by reducing overhead associated with handling an encountered write fault sector. Sustained data throughput is achieved through skipping the write fault sector and continuing the write operation. A skipped write defect list tracks the skipped sectors. In a subsequent read operation, the write defect list allows the read operation to efficiently skip over those sectors that were skipped in the write operation in response to the write defect list. Accordingly, efficient handling of encountered write faults substantially reduces overhead associated with an encountered write fault to enable sustained data throughput. The novel approach to handling encountered write faults provides a low cost solution for meeting the demands of multi-data streaming environments.
Other aspects and advantages of the present invention can be seen upon review of the figures, the detailed description, and the claims which follow.